package com.castudio.COS.qiniu.service;

import com.qiniu.common.QiniuException;
import java.io.File;
import java.io.InputStream;

/**
 * 云存储接口
 */
public interface QiNiuService {

    /**
     * 上传文件到云存储, 返回图片HTTP地址
     * @param data 字节数据
     * @param fileName 云存储文件名称
     * @return 图片HTTP地址
     * @throws Exception
     */
    String uploadFile(byte[] data, String fileName) throws Exception;

    /**
     * 上传文件到云存储
     * @param inputStream 字节流
     * @param fileName 云存储文件名称
     * @return 图片HTTP地址
     * @throws Exception
     */
    String uploadFile(InputStream inputStream, String fileName) throws QiniuException;

    /**
     * 上传文件到云存储
     * @param file 文件
     * @param fileName 云存储文件名称
     * @return 图片HTTP地址
     * @throws Exception
     */
    String uploadFile(File file, String fileName) throws QiniuException;

    /**
     * 删除文件
     *
     * @param bucketName 云存储空间名称
     * @param fileName   云存储文件名称
     * @return
     */
    Boolean removeFile(String bucketName, String fileName);


}